// -----------------------------------------------------------------------------
// Generate By Furion Tools v1.6.0                            
// -----------------------------------------------------------------------------

using Furion.DatabaseAccessor;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using System;
using System.Collections.Generic;

#nullable disable

namespace iemtm.WeChat.Core
{
    public partial class WareHouse : IEntity<MasterDbContextLocator>, IEntityTypeBuilder<WareHouse, MasterDbContextLocator>
    {

        public int WareHouseId { get; set; }
        public int? MigrationId { get; set; }
        public string WareHouseName { get; set; }
        public string Address { get; set; }
        public string ManagementPerson { get; set; }
        public string AreaCode { get; set; }
        public double Longitude { get; set; }
        public double Latitude { get; set; }
        public string Remark { get; set; }
        public int? GenTotal { get; set; }
        public string PrjCode { get; set; }
        public string CompanyCode { get; set; }
        public string WareHouseCode { get; set; }
    
        public void Configure(EntityTypeBuilder<WareHouse> entityBuilder, DbContext dbContext, Type dbContextLocator)
        {
                entityBuilder.Property(e => e.Address).HasMaxLength(100);

                entityBuilder.Property(e => e.AreaCode).HasMaxLength(50);

                entityBuilder.Property(e => e.CompanyCode).HasMaxLength(50);

                entityBuilder.Property(e => e.GenTotal).HasDefaultValueSql("((0))");

                entityBuilder.Property(e => e.ManagementPerson).HasMaxLength(50);

                entityBuilder.Property(e => e.PrjCode)
                    .IsRequired()
                    .HasMaxLength(100);

                entityBuilder.Property(e => e.Remark).HasMaxLength(200);

                entityBuilder.Property(e => e.WareHouseCode)
                    .HasMaxLength(20)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.WareHouseName).HasMaxLength(50);
        }

    }
}

